﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Lamex.mIE.Common
{
    public class GetTable
    {
        //工艺路线组合表
        public static DataTable GetTable_New()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("SEQUENCE");
            dtNew.Columns.Add("GROUP_CODE");
            dtNew.Columns.Add("ROUTING_DESC");
            return dtNew;
        }
        //工艺路线表
        public static DataTable GetTable_Routing()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
           // dtNew.Columns.Add("SEQUENCE_NO");
            dtNew.Columns.Add("GROUP_CODE");
            dtNew.Columns.Add("LAST_SAVE_TIME");
            dtNew.Columns.Add("UPDATE_USER");
            return dtNew;
        }
        //特征值缓存表
        public static DataTable GetCache_Feature()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("PROCESS_CODE");
            //dtNew.Columns.Add("PROCESS_NAME");
            dtNew.Columns.Add("FEATURE_NAME");
            dtNew.Columns.Add("FEAT_VALUE");
            dtNew.Columns.Add("LABOR_VALUE");
            return dtNew;
        }
        //尺寸参数表
        public static DataTable GetTable_SizeName()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("SIZE_NAME");
            dtNew.Columns.Add("SIZE_DESC");
            dtNew.Columns.Add("SIZE_VALUE");
            return dtNew;
        }
        //尺寸清单表
        public static DataTable GetTable_SizeList()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("WIDTH_1");
            dtNew.Columns.Add("WIDTH_2");
            dtNew.Columns.Add("DEPTH_1");
            dtNew.Columns.Add("DEPTH_2");
            dtNew.Columns.Add("THICK");
            dtNew.Columns.Add("LENGTH");
            dtNew.Columns.Add("WIDTH");
            dtNew.Columns.Add("HEIGHT");
            dtNew.Columns.Add("DEPTH");
            dtNew.Columns.Add("UPDATE_TIME");
            dtNew.Columns.Add("UPDATE_USER");
            return dtNew;
        }
        //尺寸清单表-中文显示
        public static DataTable GetTable_SizeList_CH()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("图纸编号");
            dtNew.Columns.Add("部件编号");
            dtNew.Columns.Add("阔度_1");
            dtNew.Columns.Add("阔度_2");
            dtNew.Columns.Add("深度_1");
            dtNew.Columns.Add("深度_2");
            dtNew.Columns.Add("厚度");
            dtNew.Columns.Add("长度");
            dtNew.Columns.Add("宽度");
            dtNew.Columns.Add("高度");
            dtNew.Columns.Add("深度");
            return dtNew;
        }
        //特征值表
        public static DataTable GetTable_Feature()
        {
            DataTable dtNew = new DataTable();//动态生成输出表
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("PROCESS_CODE");
            //dtNew.Columns.Add("PROCESS_NAME");
            dtNew.Columns.Add("FEATURE_NAME");
            dtNew.Columns.Add("FEAT_VALUE", typeof(string));//typeof(double)
            dtNew.Columns.Add("LABOR_VALUE");
            dtNew.Columns.Add("UPDATE_TIME");
            dtNew.Columns.Add("UPDATE_USER");
            return dtNew;
        }
        //特征值临时表-LGC_VAL_BOM_SUB2_VALUE
        public static DataTable GetTable_Feature_Temp()
        {
            DataTable dtNew = new DataTable();//动态生成输出表        
            dtNew.Columns.Add("FEATURE_NAME");
            dtNew.Columns.Add("FEAT_VALUE");         
            return dtNew;
        }
        //得到椅子参数中间表
        public static DataTable GetTable_SizeParmList_Seat_Value()
        {
            DataTable dtNew = new DataTable();//动态生成输出表        
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("S02_CUT_LEATHER");
            dtNew.Columns.Add("S02_CUT_FABRIC");
            dtNew.Columns.Add("S02_SEW");
            dtNew.Columns.Add("S02_CHECK_LEATHER");
            dtNew.Columns.Add("S03_CUT_H");
            dtNew.Columns.Add("S03_CUT_V");
            dtNew.Columns.Add("S03_CUT_PUNCH");
            return dtNew;
        }
 //得到工时上载表
        public static DataTable GetTable_LaborUpLoad()
        {
            DataTable dtNew = new DataTable();//动态生成输出表        
            dtNew.Columns.Add("DWG_NO");
            dtNew.Columns.Add("PART_NO");
            dtNew.Columns.Add("CN_DESC");
            dtNew.Columns.Add("GROUP");
            dtNew.Columns.Add("GROUP_CODE");
            dtNew.Columns.Add("iCount");
            dtNew.Columns.Add("CountDecription");
            dtNew.Columns.Add("SERIAL");
            dtNew.Columns.Add("PROCESS_CODE");
            dtNew.Columns.Add("LABOR_VALUE");
            dtNew.Columns.Add("ALLOWANCE_FACTOR");
            dtNew.Columns.Add("UPDATE_USER");
            dtNew.Columns.Add("UPDATE_TIME");
            dtNew.Columns.Add("TypeName");
            dtNew.Columns.Add("ErrorMsg");
            return dtNew;
        }
        //工艺路线组别
        public static DataTable GetTable_Routing_JM()
        {
            DataTable dt = new DataTable();
            dt.Columns.AddRange(new DataColumn[] {   
         new DataColumn("Serial",typeof(int)),  
         new DataColumn("Routing_Group",typeof(int)),  
         new DataColumn("Calculate",typeof(int)),  
         new DataColumn("Calculate_Desc",typeof(string)), 
         new DataColumn("Date_TS",typeof(DateTime))});
            return dt;
        }
        //存放BOM-子程序2-Datatable
        public static DataTable GetTable_SUB2()
        {
            DataTable dt = new DataTable();
            dt.Columns.AddRange(new DataColumn[] {   
         new DataColumn("PART_NO",typeof(string)),  
         new DataColumn("PROCESS_CODE",typeof(string)),  
         new DataColumn("FEATURE_NAME",typeof(string)),  
         new DataColumn("FEAT_VALUE",typeof(double))});
            return dt;
        }
        
        public static DataTable GetExcelFormatDataTable()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("图号");
            dt.Columns.Add("部件号");
            dt.Columns.Add("工序代码");
            dt.Columns.Add("特征名称");
            dt.Columns.Add("特征取值");
            dt.Columns.Add("特征工时");
            dt.Columns.Add("最后更新时间");
            dt.Columns.Add("更新用户");
            dt.Columns.Add("上载版次");
            dt.Columns.Add("产品类别");
            dt.Columns.Add("单位");
            dt.Columns.Add("值来源");
            dt.Columns.Add("取值逻辑");
            dt.Columns.Add("工时逻辑");
            dt.Columns.Add("特征计算值");
            dt.Columns.Add("工时计算值");
            dt.Columns.Add("单位工时");
            dt.Columns.Add("附加工时");

            return dt;
        }

        public static DataTable GetSizeParmList_Fabric()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("PART_NO");
            dt.Columns.Add("MOUDLE_NAME");
            dt.Columns.Add("FABRIC_TYPE");
            dt.Columns.Add("REQUIRE_QTY");
            dt.Columns.Add("FRONT_SIZE");
            dt.Columns.Add("FRONT_QTY");
            dt.Columns.Add("BACK_SIZE");
            dt.Columns.Add("BACK_QTY");
            dt.Columns.Add("LEFT_SIZE");
            dt.Columns.Add("LEFT_QTY");
            dt.Columns.Add("RIGHT_SIZE");
            dt.Columns.Add("RIGHT_QTY");
            dt.Columns.Add("UPDATE_USER");
            dt.Columns.Add("UPDATE_TIME");
            return dt;
        }

        public static DataTable GetSizeParmList_Foam()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("PART_NO");
            dt.Columns.Add("MOUDLE_NAME");
            dt.Columns.Add("FOAM_TYPE");
            dt.Columns.Add("REQUIRE_QTY");
            dt.Columns.Add("FOAM_CUT_LEN");
            dt.Columns.Add("FOAM_CUT_WIDTH");
            dt.Columns.Add("FOAM_CUT_THICK");
            dt.Columns.Add("FOAM_PROCESS");
            dt.Columns.Add("RAW_MAT_SIZE");
            dt.Columns.Add("UPDATE_USER");
            dt.Columns.Add("UPDATE_TIME");
            return dt;
        }
        //周期表
        public static DataTable GetCycleTime()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("PART_NO");
            dt.Columns.Add("CYCLE_TIME");
            dt.Columns.Add("UPDATE_TIME");
            dt.Columns.Add("UPDATE_USER");         
            return dt;
        }
        //任务清单导入表
        public static DataTable GetTaskList()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("PROD_CATEGORY");
            dt.Columns.Add("FILE_NO");
            dt.Columns.Add("DWG_NO");
            dt.Columns.Add("PART_NO");
            dt.Columns.Add("REF_MAT");
            return dt;
        }
        //public static DataTable GetTaskList_Temp()
        //{
        //    DataTable dt = new DataTable();
        //    dt.Columns.Add("PART_NO");
        //    dt.Columns.Add("MRP_CONTROLLER");
        //    dt.Columns.Add("PROD_CATEGORY");
        //    return dt;
        //}
        //任务清单导入-错误表
        public static DataTable GetTaskList_Error()
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("文件编号");
            dt.Columns.Add("图纸编号");
            dt.Columns.Add("部件编号");
            dt.Columns.Add("参考号码");
            dt.Columns.Add("提示");
            return dt;
        }
    }
}
